Career 2025 2024 2023 2022 2021 2020 2019 2018 2017 2016 2015 2014 2013 2012 2011 2010
All Rounds Final 1/2 1/4 First Second Third Fourth Pre-q Rubber 1 Rubber 2 Rubber 3 Rubber 4 Rubber 5 Robin Bronze Q3 N/A Q2 Q1 ER Q4 CR QF Q5 N/A
All Courts Acrylic N/A Clay Grass Carpet Hard I.hard
All Tour U.S. Open - New York M25 Nottingham Alicante Challenger Rakuten Japan Open - Tokyo Sydney Challenger Matsuyama Challenger Australian Open - Melbourne Manama Challenger Hamburg Challenger Lille Challenger Barcelona Challenger Miami Open - Miami Mutua Madrid Open - Madrid Split Challenger National Bank Open - Montreal Infosys Hall of Fame Open - Newport Western & Southern Open - Cincinnati U.S. Open - New York Kobe Challenger Chennai Challenger National Bank Open - Toronto BNP Paribas Open - Indian Wells Delray Beach Open - Delray Beach United Cup - Australia Australian Open - Melbourne Miami Open - Miami Mutua Madrid Open - Madrid US Men's Clay Court Championship - Houston Wimbledon - London French Open - Paris cinch Championships - London Rothesay International - Eastbourne National Bank Open - Toronto U.S. Open - New York Chengdu Open - Chengdu Spain F26 Spain F28 Spain F34 Spain F35 Spain F37 Spain F38 Spain F39 Spain F1 Spain F2 Spain F3 Spain F5 Spain F6 Portugal F1 Portugal F2 Spain F10 Spain F11 Spain F13 Spain F14 Spain F15 Spain F17 Spain F20 Spain F21 Spain F22 Spain F24 Spain F25 Spain F26 Spain F27 Spain F29 Spain F30 Spain F32 Spain F35 Spain F36 Spain F38 Spain F39 Turkey F1 Turkey F2 Turkey F3 Spain F1 Spain F2 Spain F3 Spain F4 Spain F6 Croatia F5 Croatia F6 Spain F9 Spain F10 Spain F11 Spain F12 Spain F13 Spain F15 Spain F16 Belgium F1 Netherlands F4 Spain F20 Spain F21 Spain F22 Italy F22 USA F28 USA F1 USA F2 USA F3 Spain F1 Spain F2 Spain F3 Spain F4 Spain F6 Spain F7 Spain F8 Spain F9 Spain F14 Great Britain F15 Italy F22 Spain F32 Portugal F9 Great Britain F5 Great Britain F11 Great Britain F15 Great Britain F7 Belgium F8 Belgium F9 Belgium F10 Belgium F11 Belgium F12 Belgium F13 Belgium F14 France F21 France F22 Germany F17 Germany F18 Great Britain F10 Great Britain F11 France F1 France F2 Spain F1 Spain F3 Spain F4 Spain F5 Spain F6 Portugal F7 Belgium F11 Belgium F12 Belgium F14 Great Britain F4 Great Britain F5 Cyprus F1 Cyprus F2 Cyprus F3 Spain F1 (Manacor) Spain F2 (Manacor) Spain F3 (Paguera) Spain F4 (Paguera) Spain F6 (Cornella) Portugal F1 (Vale Do Lobo) Portugal F2 (Faro) Portugal F3 (Loule) Portugal F4 (Lisbon) Portugal F5 (Quinta Da Marinha) Portugal F6 (Porto) Portugal F7 (Carcavelos) Spain F11 (Majadahonda) Poland F2 (Gdynia) Poland F3 (Mragowo) Poland F4 (Mragowo) Poland F5 (Mragowo) Poland F6 (Mragowo) Poland F7 (Mragowo) Poland F8 (Mragowo) Belgium F8 (Eupen) Belgium F9 (Koksijde) Belgium F10 (Lambermont) Belgium F11 (Damme) Belgium F12 (Middelkerke) Great Britain F4 (Nottingham) Great Britain F6 (Barnstaple) Greece F7 (Heraklion) Greece F8 (Heraklion) Greece F9 (Heraklion) Thailand F10 (Hua Hin) Thailand F11 (Hua Hin) Thailand F12 (Hua Hin) Spain F2 (Manacor (Mallorca)) Spain F3 (Paguera (Mallorca)) Great Britain F2 (Loughborough) Great Britain F3 (Shrewsbury) Italy F2 (Santa Margherita Di Pula) Italy F3 (Santa Margherita Di Pula) Italy F4 (Santa Margherita Di Pula) Italy F5 (Santa Margherita Di Pula) Italy F6 (Santa Margherita Di Pula) Italy F7 (Santa Margherita Di Pula) Italy F8 (Santa Margherita Di Pula) Italy F9 (Santa Margherita Di Pula) Spain F17 (Bakio) Spain F18 (Getxo) Spain F19 (Gandia) Spain F20 (Denia) Great Britain F4 (Nottingham) Italy F28 (Santa Margherita Di Pula) Italy F29 (Santa Margherita Di Pula) Italy F30 (Santa Margherita Di Pula) Vietnam F4 (Tay Ninh) Vietnam F5 (Tay Ninh) Thailand F8 (Nonthaburi) M25 Nonthaburi M15 Hua Hin M15 Hua Hin M15 Hua Hin M25 Tay Ninh M25 Tay Ninh M15 Sharm El Sheikh M15 Sharm El Sheikh M15 Heraklion M15 Heraklion M15 Heraklion M15 Heraklion M15 Manacor M15 Manacor M15 Heraklion M15 Heraklion M15 Vale Do Lobo M25 Nonthaburi Great Britain F5 (Roehampton) M15 Faro M15 Loule M15 Heraklion M15 Heraklion M15 Heraklion M15 Heraklion M15 Antalya M15 Antalya M15 Antalya M15 Antalya M15 Antalya M15 Antalya M15 Heraklion M15 Heraklion M15 Heraklion M15 Antalya M15 Antalya M15 Antalya M15 Almada M15 L'Aquila M15 Perugia M15 Xativa M15 Cairo M15 Cairo M15 Sozopol M15 Sozopol M15 Antalya M15 Antalya M15 Antalya M15 Antalya M15 Antalya M15 Antalya M25 Bath M25 Loughborough M25 Shrewsbury M25 Glasgow M25 Vale do Lobo M25 Faro M25 Antalya M25 Antalya M15 Antalya M15 Antalya M25 Nottingham M25 Nottingham M25 Nottingham M25 Nottingham M25 Heraklion M25 Faro M25 Portimao M25 Roehampton Pozoblanco Challenger Segovia Challenger Alphen Challenger Tiburon Challenger Savannah Challenger Tallahassee Challenger Furth Challenger Milan Challenger M25 Vila Real de Santo Antonio Recanati Challenger M25 Loule M25 Quinta Do Lago Seville Challenger Yeongwol Challenger Chitre Challenger Cherbourg Challenger Sarasota Challenger Todi Challenger Scheveningen Challenger Vancouver Challenger Seville Challenger Charlottesville Challenger Caltanissetta Challenger Cherbourg Challenger Quimper Challenger Mersin Challenger Furth Challenger Prague Challenger Poznan Challenger Aptos Challenger Barranquilla Challenger Casablanca Challenger Kobe Challenger Yokohama Challenger Guangzhou Challenger Braunschweig Challenger Como Challenger Seville Challenger Maui Challenger Santiago Challenger Buenos Aires Challenger Seville Challenger Szczecin Challenger Traralgon Challenger Canberra Challenger Knoxville Challenger Toyota Challenger San Benedetto Challenger Lisbon Challenger Poznan Challenger Ilkley Challenger Aptos Challenger Phoenix Challenger Vancouver Challenger Milan Challenger Genova Challenger Lisbon Challenger Szczecin Challenger Biella Challenger Fairfield Challenger Knoxville Challenger Burnie Challenger Indian Wells Challenger Furth Challenger Belgrade Challenger Heilbronn Challenger Oeiras 3 Challenger Braga Challenger Las Vegas Challenger Surbiton Challenger Como Challenger Nottingham Challenger Rome Challenger Braunschweig Challenger Alicante Challenger Ismaning Challenger Nonthaburi 2 Challenger Forli 6 Challenger Monterrey Challenger Lisbon Challenger Las Franquesas del Valles Challenger Murcia Challenger Madrid Challenger Oeiras 3 Challenger Ostrava Challenger Cagliari Challenger Prague 2 Challenger Turin Challenger Charlottesville Challenger Cassis Challenger Malaga Challenger Parma Challenger Quimper Challenger Nottingham Challenger Nur-Sultan 2 Challenger Marbella Challenger Salzburg-Anif Challenger Rome Challenger St. Tropez Challenger Todi Challenger Amersfoort Challenger Winnipeg Challenger Danderyd Challenger Sibiu Challenger Lexington Challenger Surbiton Challenger Lugano Challenger Hamburg Challenger Playford Challenger Ortisei Challenger Nottingham 2 Challenger Oeiras 3 Challenger Tunis Challenger Salzburg Challenger Hangzhou Challenger Brest Challenger Seoul Challenger Braunschweig Challenger Tata Open Maharashtra - Pune Sofia Open - Sofia Pune Challenger Madrid Challenger Bengaluru Challenger Francavilla Challenger Korea Open - Seoul Surbiton Challenger New Delhi Challenger Phoenix Challenger Menorca Challenger Seville Challenger Sacramento Challenger Cagliari Challenger Prague Challenger Ilkley Challenger Kenitra Challenger Taipei 2 Challenger Seoul Challenger Birmingham Challenger Bratislava 2 Challenger Poznan Challenger Cary 1 Challenger Winnipeg Challenger Charlottesville Challenger BMW Open - Munich Vercelli Challenger Rome Challenger Canberra Challenger Guangzhou Challenger Vancouver Challenger Bordeaux Challenger Madrid Challenger San Diego Challenger Shenzhen Challenger Mauthausen Challenger Bordeaux Challenger Lyon Challenger Cordenons Challenger Manerbio Challenger Perugia Challenger Ho Chi Minh City Challenger Suzhou Challenger Kobe Challenger Lexington Challenger Chicago Challenger Kobe Challenger Sarasota Challenger Cassis Challenger Rome Challenger Rome Challenger Parma Challenger Aptos Challenger Las Vegas Challenger Canberra Challenger Prostejov Challenger Istanbul Challenger Hamburg Challenger Aix En Provence Challenger Lyon Challenger Lisbon Challenger Charlottesville Challenger Bordeaux Challenger Francavilla Challenger Troisdorf Challenger Braunschweig Challenger Indianapolis Challenger Lexington Challenger Chicago Challenger Hamburg Challenger Sanremo Challenger Yokohama Challenger Bergamo Challenger Augsburg Challenger Nonthaburi 3 Challenger Koblenz Challenger Marburg Challenger Nonthaburi 2 Challenger Girona Challenger Szczecin Challenger Braunschweig Challenger Barranquilla Challenger Cary Challenger Ningboo Challenger Shenzhen Challenger Nonthaburi 3 Challenger Royal Guard Open Chile - Vina del Mar Panama City Challenger Copa Claro - Buenos Aires Cap Cana Challenger Portugal Open - Oeiras Bordeaux Challenger Malaysian Open - Kuala Lumpur Rakuten Japan Open - Tokyo Erste Bank Open - Vienna Brisbane International - Brisbane Sassuolo Challenger Guimaraes Challenger Grand Prix Hassan II - Casablanca Rio Open - Rio de Janeiro Millennium Estoril Open - Estoril Generali Open - Kitzbuhel Brasil Open - Sao Paulo Millennium Estoril Open - Estoril Delray Beach Open - Delray Beach Generali Open - Kitzbuhel Winston-Salem Open - Winston-Salem Rakuten Japan Open - Tokyo Intrum Stockholm Open - Stockholm Swiss Indoors Basel - Basel Brisbane International - Brisbane Szczecin Challenger Sydney International - Sydney Argentina Open - Buenos Aires Brasil Open - Sao Paulo Grand Prix Hassan II - Marrakech Swiss Open - Gstaad Abierto Mexicano de Tenis Mifel - Los Cabos Rakuten Japan Open - Tokyo Abierto Mexicano Telcel - Acapulco Forte Village Sardegna Open - Sardinia Serbia Open - Belgrade Adelaide International 1 - Adelaide Trnava Challenger Qatar ExxonMobil Open - Doha Dubai Duty Free Tennis Championships - Dubai Serbia Open - Belgrade cinch Championships - London Mallorca Championships - Mallorca Truist Atlanta Open - Atlanta Citi Open - Washington Delray Beach Open - Delray Beach Todi Challenger Abierto Mexicano Telcel - Acapulco EFG Swiss Open - Gstaad San Marino Challenger Cordenons Challenger M15 Antalya Nonthaburi 1 Challenger Scheveningen Challenger Mestre Challenger Loughborough Challenger Nonthaburi 1 Challenger Sofia Open - Sofia Nordea Open - Bastad Barcelona Open BancSabadell - Barcelona Atlanta Open - Atlanta Citi Open - Washington China Open - Beijing Shenzhen Open - Shenzhen Plava Laguna Croatia Open - Umag Astana Open - Astana Banja Luka Open - Banja Luka Plava Laguna Croatia Open - Umag Chengdu Open - Chengdu ASB Classic - Auckland Dallas Open - Dallas BMW Open - Munich Open Parc - Lyon Japan Open Tennis Championships - Tokyo cinch Championships - London Mallorca Championships - Mallorca Qatar ExxonMobil Open - Doha Winston-Salem Open - Winston-Salem Hong Kong Tennis Open - Hong Kong Open Sud de France - Montpellier Open 13 - Marseille Bet-at-home Open - Hamburg BNP Paribas Open - Indian Wells Citi Open - Washington Valencia Open - Valencia Aircel Chennai Open - Chennai Open Sud de France - Montpellier Brasil Open - Sao Paulo Grand Prix Hassan II - Marrakech BRD Nastase Tiriac Trophy - Bucharest SkiStar Swedish Open - Bastad Yokohama Challenger Rakuten Japan Open - Tokyo Qatar ExxonMobil Open - Doha Rio Open - Rio de Janeiro Grand Prix Hassan II - Marrakech Suisse Open - Gstaad ASB Classic - Auckland Abierto Mexicano Telcel - Acapulco TEB BNP Paribas Istanbul Open - Istanbul Sibiu Challenger National Bank Open - Montreal Antalya Cup - Antalya Plava Laguna Croatia Open - Umag Swiss Open - Gstaad Canberra Challenger Rio Open - Rio de Janeiro BMW Open - Munich Geneva Open - Geneva Murray River Open - Melbourne Singapore Tennis Open - Singapore Anytech365 Andalucia Open - Marbella Winston-Salem Open - Winston-Salem Rakuten Japan Open - Tokyo Swiss Indoors Basel - Basel San Diego Open - San Diego Tennis Napoli Open - Naples Adelaide International 1 - Adelaide ASB Classic - Auckland BMW Open - Munich Citi Open - Washington Delray Beach Open - Delray Beach Mifel Tennis Open - Los Cabos Abierto Mexicano Telcel - Acapulco Rothesay International - Eastbourne Nordea Open - Bastad Chengdu Open - Chengdu Almaty Open - Almaty Moselle Open - Metz Adelaide International - Adelaide Dallas Open - Dallas Prague 1 Challenger Mifel Tennis Open - Los Cabos Rakuten Japan Open - Tokyo US Men's Clay Court Championship - Houston Abierto Mexicano - Los Cabos cinch Championships - London New York Open - New York BNP Paribas Open - Indian Wells Sony Open Tennis - Miami Miami Open - Miami Monte-Carlo Rolex Masters - Monte-Carlo Monte-Carlo Rolex Masters - Monte-Carlo Internazionali BNL d'Italia - Rome Shanghai Rolex Masters - Shanghai BNP Paribas Open - Indian Wells Miami Open - Miami Western & Southern Open - Cincinnati Shanghai Rolex Masters - Shanghai Miami Open - Miami Monte-Carlo Rolex Masters - Monte-Carlo Internazionali BNL d'Italia - Rome Internazionali BNL d'Italia - Rome Western & Southern Open - New York BNP Paribas Open - Indian Wells BNP Paribas Open - Indian Wells Miami Open - Miami Monte-Carlo Rolex Masters - Monte-Carlo Western & Southern Open - Cincinnati BNP Paribas Open - Indian Wells Miami Open - Miami Shanghai Rolex Masters - Shanghai Monte-Carlo Rolex Masters - Monte-Carlo BNP Paribas Open - Indian Wells Barcelona Open Banc Sabadell - Barcelona Shanghai Rolex Masters - Shanghai BNP Paribas Open - Indian Wells Internazionali BNL d'Italia - Rome Cincinnati Open - Cincinnati Internazionali BNL d'Italia - Rome BNP Paribas Masters - Paris Mutua Madrid Open - Madrid Australian Open - Melbourne French Open - Paris Wimbledon - London U.S. Open - New York Australian Open - Melbourne French Open - Paris Wimbledon - London U.S. Open - New York Australian Open - Melbourne French Open - Paris Mutua Madrid Open - Madrid Wimbledon - London Australian Open - Melbourne French Open - Paris Wimbledon - London U.S. Open - New York Australian Open - Melbourne French Open - Paris Wimbledon - London U.S. Open - New York Australian Open - Melbourne French Open - Paris U.S. Open - New York Australian Open - Melbourne French Open - Paris U.S. Open - New York Australian Open Qualifying - Doha French Open - Paris U.S. Open - New York Australian Open - Melbourne French Open - Paris Wimbledon - London U.S. Open - New York French Open - Paris Wimbledon - London Australian Open - Melbourne French Open - Paris Wimbledon - London Davis Cup, World Group, 1R, JPN-FRA 1-4 Australian Open - Melbourne Davis Cup, World Group, PO, JPN-BIH 4-0 Davis Cup, Qualifiers, 1R, SWE-JPN 3-2 Davis Cup, Group I, PO, JPN-POL 4-0 Davis Cup, Group D, Manchester Davis Cup, World Group, Q, JPN-GBR 3-2 French Open (juniors) Wimbledon (juniors) U.S. Open (juniors) Wimbledon (juniors) All Lower level tournaments Davis Cup, World Group, QF, JPN-CZE 0-5 Davis Cup, World Group, PO, COL-JPN 2-3 Davis Cup, World Group, 1R, GBR-JPN 3-1 Davis Cup, World Group, 1R, JPN-ITA 1-3 Davis Cup, World Group, PO, JPN-UKR 5-0 Davis Cup, World Group, QR, CHN-JPN 2-3 Internazionali BNL d'Italia - Rome Olympics - Rio de Janeiro Olympics - Paris Olympics - Tokyo